from django.utils.deprecation import MiddlewareMixin

"""
middleware 中间件： 给项目的所有接口API添加额外的功能
                只需要设置一次即可
                
实际应用场景：
    1. 处理请求对象之前：
        判断登录 所有页面
        限流
        防止爬虫
    2. 处理请求对象之后：
        统一处理数据格式 比方说json{
            "data":[],
            "msg":'',
            "code":0
"""
# 自定义中间件

class TestMiddleware1(MiddlewareMixin):
    def process_request(self,request):
        print('process_request1 被调用')

    def process_view(self,request,view_func, view_args, view_kwargs):
        # 处理视图前自动调用
        print('process_view1 被调用')

    def process_response(self,request,response):
        # 在每个响应返回给客户端之前自动调用
        print('process_response 被调用')

        return response